Variablen in FBS deklarieren

Sie verfügen über diese Möglichkeiten, um eine bzw. mehrere →Variablen in einer →POE in →FBS zu deklarieren:

In diesem Artikel:
Gut zu wissen

(Graue Glühbirne) Sie können einige Eigenschaften einer bereits deklarierte Variable nachträglich ändern. Die Möglichkeiten finden Sie unter "Variablen bearbeiten" angeführt

(Graue Glühbirne) Falls Sie eine →konstante→gepufferte oder →nicht-gepufferte Variable benötigen, verwenden Sie die Inhaltshilfe. Derzeit unterstützt Neuron Power Engineer nur diese Möglichkeit zum Deklarieren von solchen Variablen.

(Graue Glühbirne) Der Applikationsnavigator bietet auch eine Möglichkeit, um externe Variablen auf Basis von bereits vorhandenen globalen Variablen zu deklarieren. Dabei ziehen Sie die globalen Variablen von einem Global-Objekt auf eine →POE. Details: Siehe "Externe Variablen mit Hilfe von "Drag and Drop" in POE deklarieren".

(Graue Glühbirne)Sie können auch Variablen und/oder Instanzen kopieren und einfügen, um neue Variablen/Instanzen auf der Grundlage von bereits vorhandenen Variablen/Instanzen zu deklarieren.

Variablen mit Hilfe eines Dialogs in der Liste der deklarierten Variablen erstellen

  1. Blenden Sie die Liste der deklarierten Variablen ein. 
    Alternative für eine →Eingangsvariable, →Ausgangsvariable oder →Ein-/Ausgangsvariable: Öffen Sie den Schnittstellen-Editor für das Objekt (aus dem Projektexplorer).

  2. Im Kontextmenü wählen Sie Neue Variable.... Alternative: Drücken Sie die Strg-Taste und die +-Taste.

  3. Im Dialog geben Sie die folgenden Eigenschaften für die Variable ein und drücken Sie OK.

    1. Name, wobei der Name ein →IEC-Bezeichner sein muss 
      (Info)  Falls Sie mehrere Variablen zugleich deklarieren wollen, geben Sie alle Namen ein und verwenden Sie ,,  als Trennzeichen. Beispiel: UpErr, QuitErr, MotorUp, MotorDown

    2. Abschnitt (= die Variablen-Art), z.B. LOCAL (für →lokale Variable, auch als →interne Variable bekannt), INPUT (für →Eingangsvariable) usw.

      Einschränkungen

      →Temporäre Variablen sind in FBS nicht möglich. →Ein-/Ausgangsvariablen können nicht in einem →Programm deklariert werden, →globale Variablen nicht in einem →Funktionsbaustein oder einer →Funktion.

  1. →Datentyp oder →Funktionsbaustein-Typ
    (Warnung) Mehrdimensionale →ARRAY-Datentypen werden nicht für die Beschaltung eines Baustein-Ein-/Ausgang mit einem →allgemeinen Datentyp (z.B. den Ein-/Ausgang des MOVE-Bausteins) unterstützt. 
    (Info) Geben Sie einen oder mehrere Buchstaben an, damit eine Auswahlliste mit den entsprechenden Datentypen und Funktionsbausteinen angeboten wird.
    Nachträgliche Änderungen der Auswahl sind möglich, indem Sie z.B. eine →ARRAY-Deklaration vervollständigen. Für den STRING-Datentyp wird automatisch STRING[80] eingetragen. Überscheiben Sie 80, falls Sie eine andere Länge für die STRING-Variable wünschen.

  2. →Initialisierungswert (nur optional erforderlich) – Dieser darf ein →konstanter Ausdruck sein (in Übereinstimmung mit dem →Datentyp).
    Es ist nicht möglich, einer →externen Variablen einen Initialisierungswert zuzuweisen.

Boolesche lokale Variable schnell erstellen

  1. Blenden Sie die Liste der deklarierten Variablen ein.

  2. Im Kontextmenü wählen Sie Neue Variable (LOCAL, BOOL). Alternative: Drücken Sie Strg+Umschalt und die +-Taste.
    (Info) Bei Bedarf können Sie den Namen und den Datentyp nachträglich ändern. Siehe unter "Variablen bearbeiten".

Wertfelder mit neuen Variablen erstellen

Verwenden Sie den Befehl Variable(n) im Kontextmenü des Zeichenfelds, um ein oder mehrere →Wertfelder mit den neuen Variablen zu erstellen. Dabei werden die erforderlichen Variablen automatisch deklariert.

  1. Positionieren Sie den Mauszeiger über einen leeren Bereich des →grafischen FBS-Editors – dort, wo Sie das Wertfeld benötigen.

  2. Im Kontextmenü des FBS-Editors wählen Sie Erstellen und Variable(n). Alternative: Drücken Sie Strg+Umschalt+V.

  3. Im Dialog geben Sie die Eigenschaften für die Variable ein und drücken Sie OK.
    Diese Eingabe ist analog zu jener, die unter " Variablen mit Hilfe eines Dialogs in der Liste der deklarierten Variablen erstellen" beschrieben ist.

  4. Positionieren Sie das Wertfeld, indem Sie die primäre Maustaste oder die Eingabe-Taste drücken. Dabei werden die entsprechenden Variablen automatisch deklariert, wodurch sie in der Liste der deklarierten Variablen angeführt werden. Diese Liste wird bei dieser Erstellungsvariante automatisch eingeblendet.

Wertfelder mit neuen Variablen erstellen (mit Hilfe der Inhaltshilfe)

Verwenden Sie die Inhaltshilfe, um ein oder mehrere Wertfelder mit den neuen Variablen zu erstellen. Dabei werden die erforderlichen Variablen automatisch deklariert.

  1. Positionieren Sie den Mauszeiger über einen leeren Bereich des grafischen FBS-Editors – dort, wo Sie das Wertfeld benötigen.

  2. Doppelklicken Sie oder drücken Sie Strg+Leerzeichen.
    Ergebnis: Ein Eingabefeld wird geöffnet.

  3. Deklarieren Sie die Variablen laut dieser Syntax: X, Y : name_1, name_2, ..., name_n : type := initial-value (wobei die Teile X, Y : und :=initial-value optional sind).

  4. Drücken Sie die Eingabe-Taste.
    Ergebnis: Die Vorschau des Wertfelds wird angezeigt.
    Ergebnis, falls die Variable bereits mit einem anderen Datentyp vorhanden ist: Dieser Konflikt wird gemeldet. Ändern Sie in diesem Fall den Namen der Variablen in einen eindeutigen Namen und drücken Sie erneut die Eingabetaste.

  5. Positionieren Sie das Wertfeld, indem Sie die primäre Maustaste oder die Eingabe-Taste drücken.
    Ergebnis, wenn die Variable noch nicht deklariert wurde: Die erforderlichen Variablen werden automatisch deklariert. Die Variablen werden daher in der Liste der deklarierten Variablen angeführt.
    Ergebnis, falls die Variable bereits mit in einem anderen Abschnitt X vorhanden ist: Dieser Konflikt wird gemeldet. Die vorhandene Variable des jeweiligen Abschnitts wird in das Wertfeld eingetragen.

Weitere Informationen zum Erstellen von Wertfeldern finden Sie unter "Wertfelder und/oder Aufrufe von Bausteinen mit Hilfe der Inhaltshilfe in FBS erstellen".

Beispiele
  • var1, var2 : BOOL
    2 Wertfelder werden erstellt; eines enthält eine interne Variable (aufgrund des fehlenden Präfix für X) mit dem Namen var1, das andere ebenfalls eine interne Variable, aber mit dem Namen var2. Beide Variablen sind vom →Datentyp. BOOL Es ist kein →Initialisierungswert und kein Schlüsselwort vorgegeben (aufgrund des fehlenden Präfix für Y).

  • I: var3 : INT := 5
    Ein Wertfeld wird erstellt; es enthält die Eingangsvariable (aufgrund von I) mit dem Namen var3 vom Datentyp INT und mit dem Initialisierungswert 5.  Es ist kein Schlüsselwort vorgegeben (aufgrund des fehlenden Präfix für Y).

  • C : var4 : INT := 5
    Ein Wertfeld wird erstellt; es enthält die Eingangsvariable (aufgrund von X) mit dem Namen var4 vom Datentyp INT und mit dem Initialisierungswert 5.  Aufgrund von C ist die Variable mit dem Schlüsselwort CONSTANT deklariert, es handelt sich daher um eine →konstante interne Variable.
    Hinweis auf einen möglichen Konflikt: Wenn bereits eine Variable var4 vom Datentyp BOOL benannt ist, wird dieser Konflikt gemeldet. Die Variable und das Wertfeld können nicht erstellt werden.

  • L, C : var5 : BOOL
    Ein Wertfeld wird erstellt; es enthält die Eingangsvariable (aufgrund von L) mit dem Namen var5 vom Datentyp BOOL. Es ist kein Initialisierungswert vorgegeben. Aufgrund von C ist die Variable wieder mit dem Schlüsselwort CONSTANT deklariert.
    Hinweis auf einen möglichen Konflikt: Wenn bereits eine Variable BOOL vom Datentyp var5 benannt ist, wird dieser Konflikt gemeldet. Stattdessen wird die vorhandene externe Variable in das Wertefeld eingetragen und die interne, konstante Variable var5 vom Datentyp BOOL nicht deklariert.

  • I, R : var6 : INT
    Ein Wertfeld wird erstellt; es enthält die Eingangsvariable (aufgrund von I) mit dem Namen var6 vom Datentyp INT. Es ist kein Initialisierungswert vorgegeben. Aufgrund von R ist die Variable mit dem Schlüsselwort RETAIN deklariert, es handelt sich daher um eine →gepufferte Eingangsvariable.

  • O, NR : var7 : SINT
    Ein Wertfeld wird erstellt; es enthält die Ausgangsvariable (aufgrund von O) mit dem Namen var7 vom Datentyp SINT. Es ist kein Initialisierungswert vorgegeben. Aufgrund von NR ist die Variable mit dem Schlüsselwort NON_RETAIN deklariert, es handelt sich daher um eine nicht-gepufferte Ausgangsvariable.

Erklärung der Syntax

Präfix "X"

Statt X geben Sie das Kürzel für die benötige Variablen-Art ein:

  1. L für →lokale Variablen, auch als →interne Variable (VAR) bekannt

  2. I für →Eingangsvariablen (VAR_INPUT)

  3. O für →Ausgangsvariablen (VAR_OUTPUT)

  4. IO für →Ein-/Ausgangsvariablen (VAR_IN_OUT
    Es ist nicht möglich, Ein-/Ausgangsvariablen in einem →Programm zu deklarieren.

  5. G für →globale Variablen (VAR_GLOBAL)
    Es ist nicht möglich, globale Variablen in einem →Funktionsbaustein oder einer →Funktion zu deklarieren.

  6. E für →externe Variablen (VAR_EXTERNAL)
    Es ist nur möglich, eine externe Variable im Funktionsbaustein oder in der Funktion zu deklarieren, falls bereits eine globale Variable mit dem gleichen Namen in einem →Programm oder in einer →Ressource (im SPS-Objekt) deklariert wurde.  Für die Deklaration einer externen Variable im Programm muss bereits eine globale Variable mit dem gleichen Namen in einer Ressource deklariert worden sein.
    Ihnen ist der Name der globalen Variablen nicht bekannt? Dann deklarieren Sie die externe Variablen mit Hilfe der nächste Inhaltshilfe-Liste.

    Falls Sie das Kürzel X weglassen, werden die Variablen automatisch als lokale Variablen (VAR) erstellt. Siehe die vorhergehenden Beispiele. Einschränkungen für die Variablen-Art siehe oben.

 
Präfix "Y"

Statt Y geben Sie das Kürzel für das benötige Schlüsselwort ein:

  1. C für eine →konstante Variable

  2. R für eine →gepufferte Variable

  3. NR für eine →nicht-gepufferte Variable

    Falls Sie das Kürzel Y (inkl.  , davor) weglassen, werden die Variablen ohne Schlüsselwort erstellt. Siehe die vorhergehenden Beispiele.
    Es ist möglich, das Kürzel C mit dem Kürzel R oder NR zu kombinieren. Die Kürzel R und NR können nicht miteinander kombiniert werden. Informieren Sie sich am besten im entsprechenden Glossar-Artikel, welches Schlüsselwort für welche Variablen-Art möglich ist.
    Es ist auch möglich, die Kürzel für das Schlüsselwort vor dem Kürzel für die Variablen-Art anzugeben. Daher: Y, X :name_1, name_2, ..., name_n : type := initial-value

 
Name der Variable

Statt name_1, name_2, ..., name_n geben Sie den Namen für die Variable ein. Der Name muss ein →IEC-Bezeichner sein. Falls Sie nur eine Variable deklarieren wollen, geben Sie nur einen Namen an (ohne ,).

 
Mögliche Typen

Statt type geben Sie einen Datentyp oder Funktionsbaustein-Typen ein. Bei Bedarf können Sie den Datentyp nachträglich ändern.

 
Initialisierungswert

Statt initial-value geben Sie einen Initialisierungswert ein. Diese Angabe ist optional. Sie können den Initialisierungswert nachträglich angeben.